package andy.demo.thread;
import java.io.IOException;
import java.io.ObjectInputStream.GetField;

/*
 * 
 * setDeamon(true);//设为守护线程,
 * 用户线程：Java虚拟机在它所有用户线程已经离开后自动离开。
 * 守护线程：如果没有用户线程在运行，那么就会自动离开。
 * 
 * yield();//当前线程让出执行时间片
 * 
 * setPriority();//设置线程的优先级。java的线程调度是抢占式的，高优化级的线程**更有机会(不是绝对)**获得运行的机会。
 */
public class MultiThread_yieldTest {

    /**
     * @param args
     */
    public static void main(String[] args) {

        System.out.println("------0------");

        MyThread2 mt = new MyThread2("mt");
        mt.setDaemon(true);
        mt.start();

        System.out.println("------1------");

        while (true) {

            System.out.println("main_name:" + Thread.currentThread().getName());
        }


    }

}

class MyThread2 extends Thread {
    public MyThread2(String name) {
        super(name);
    }

    public void run() {
        while (true) {

            System.out.println("my_name:" + getName());
            yield();
            System.out.println("下次进来先打印我");

        }

    }
}